package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class SortListDemo2 {
    public static void main(String[] args) {
        List<Point> list=new ArrayList<>();
        list.add(new Point(3,6));
        list.add(new Point(46,78));
        list.add(new Point(98,35));
        list.add(new Point(21,3));
        list.add(new Point(0,7));
        list.add(new Point(1,2));
        System.out.println(list);

     //   Collections.sort(list);
        System.out.println(list);
//        Comparator<Point> comparator=new Comparator<Point>() {
//            //使用匿名内部类的形式创建比较规则
//            @Override
//            public int compare(Point o1, Point o2) {
//                int len1= o1.getX()*o1.getX()+ o1.getY()* o1.getY();
//                int len2= o2.getX()*o2.getX()+ o2.getY()* o2.getY();
//                return len1-len2;
//
//            }
//        };
//        Collections.sort(list,comparator);
        Collections.sort(list,new Comparator<Point>() {
            //使用匿名内部类的形式创建比较规则
            @Override
            public int compare(Point o1, Point o2) {
                int len1= o1.getX()*o1.getX()+ o1.getY()* o1.getY();
                int len2= o2.getX()*o2.getX()+ o2.getY()* o2.getY();
                return len1-len2;

            }
        });
        System.out.println(list);



    }
}

